-- GET_FLOAT_ROUND_TO_INT
-- 计算地牢怪物的初始血量

-------------------
-- @param v     浮点数
-- @param b     精确到几位小数点
return function(v, d)
    local acc = {
        10,
        100,
        1000,
        10000,
        100000,
    };

    assert(d <= #acc);

    local ceil_var = 0;
    local t = math.modf(v * acc[d]);

    for i = 1, d do
        local m = t % 10;
        if m >= 5 then
            t = math.modf(t / 10) + 1;
        else
            t = math.modf(t / 10);
        end

        -- 向上取整
        if m > 0 then
            ceil_var = 1;
        end
    end

    return t + 1;
end
